Conventional methods for detecting and correcting data errors generally attempt to detect and correct such errors by transmitting redundant data. The redundant data is sent across a communications channel that is implemented to validate the data following reception of the data. Examples of conventional redundant data detection/correction systems include cyclic redundancy check (CRC), checksum, and forward error correction (FEC). Since conventional methods operate after reception of the complete data packet or frame construct, such conventional methods induce additional delay into communications channel recovery time when responding to such errors.
For conventional systems that contain error detection at the data source, any character detected as invalid is transmitted as some other valid character. Conventional system designs assume that the conventional link-data protection mechanisms (i.e., PARITY, CRC, FEC, etc.) will detect and properly deal with the error.
All system protection mechanisms that are based only on transport of redundant data can be defeated by specific types of faults or corruptions of the data as the data passes across the link.